Oracle SQL uses with recursive analysis (for example) and oracle Recursion
The WITH recursion provided by Oracle is not just a repetition of tree-like queries. In fact, recursive WITH statements can provide more flexible tree-like Query functions.
The following describes th
Syntax for adding fields: alter table tablename add (column datatype [default value] [null/not null],...);
Alter table tablename modify (column datatype [default value] [null/not null],...);
Syntax for deleting a field: alter table tablename drop (column );
Multiple columns are separated by commas.
Use alter table to add, delete, and modify a column.
Create a table structure:Copy codeThe Code is as follows:Create table test1(Id varchar2 (20) not null );Add a field:Copy codeThe Code is as follows
Usage Scenario: When you need to access data from another SQL Server database from an Oracle database, Oracle provides a tool: gateways. With this tool, you can create dblink to connect to SQL Server or a different company's database----depending on the options you install.
After you install gateways, you can create d
How should I write SQL recursive statements in oracle databases? The following is an example of using SQL recursive statements in oracle for your reference.
Example:
Pid idA BA cA eB b1B b2C c1E e1E e3D d1Specify pid = a and selec
Use this SQL statement
Select*FromTree
View the raw data as follows:
The following figure shows the result of a tree query (including the fields ROOT, LEVEL, IS_LEAF, and PATH ):
Execute the following SQL statement:
SelectConnect_by_root (child_col) root,Level, Decode (connect_by_isleaf, 0,'No', 1,'Yes') Is_leaf, sys_connect_by_path (child_col,'/') Path
FromTree
StartWithParent_colIsNullConnectByP
is declared and needs to be inserted before the BEGIN keyword: dynamic RESULT sets 1LANGUAGE sql*/create PROCEDURE a_test2 ( V_c VARCHAR (()) DYNAMIC RESULT sets 1LANGUAGE sqlbegin DECLARE t_sql VARCHAR2 (a); DECLARE t_a VARCHAR2 (); DECLARE t_b VARCHAR2 (); DECLARE t_c VARCHAR2 (); DECLARE t_d VARCHAR2 (); --The t_stmt behind the for is consistent with the following prepare variable, and its type is statement.
Explain the SQL syntax example of the most efficient paging query in ORACLE, oraclesql
-- 1: no order by statement. (Most efficient)
-- (After testing, this method has the lowest cost. Only one layer is nested, and the speed is the fastest! Even if the queried data volume is large, it is almost unaffected and the speed is still high !)
SELECT *
FROM (select rown
Problem Description:Oracle uses PL/SQL developer to export data to CSV format, VARCHAR2 Type field if the value (for example, 3307830000004059) is too long, the CSV file is represented in scientific notation, even if the column is selected, click Data--. > columns, fixed width, column data format select text, and the last one will still be set to 0.Workaround:Oracle uses PL/
An SQL example that causes a deadlock is provided.Deadlock definition: in a broad sense, it includes the operating system application database. If two Process sessions hold each other's resources, they always wait for the other to release. This situation may cause a deadlock.Misunderstanding: Session blocking is not a deadlock, because one of the sessions can continue to operate.Release:
Oracle Database MaintenanceIt is a skill that must be mastered as a database administrator. There are many database maintenance operations. This article summarizes 18 common database maintenance operationsSQL code exampleNext, let's take a look at this part.
1. Find the SID of the current session, SERIAL #
SELECTSid,Serial#
FROMV$session
WHEREAudsid=Sys_Context('USERENV','SESSIONID');
2. query the OS process ID of the session.
SEL
The general paging method is like the following:The so-called "three-layer nesting" Statement),
SELECT*
FROM(SELECTa.*
,rownumrn
FROM(SELECT*FROMtable_name)a
WHERErownum
WHERErn>=21
Performance problems may occur when a record with more than 1 million rows in a data table is displayed. The solution proposed by someone is to use the index. First, scan the index to find the rowid, and then use the rowid to find the required records. What if there is no index? Taking
The general paging method is like the following (the so-called three-layer Nesting Method), SELECT * FROM (SELECTa. * nbs ..
The general paging method is like the following (the so-called three-layer Nesting Method), SELECT * FROM (SELECTa. * nbs ..
The general paging method is like the following (the so-called "three-layer nesting" method ),
When a record with 1 million rows in a data table is displayed, the U.S. server may have performance problems. The solution proposed by someone is t
Use this SQL statement
select * from tree
View the raw data as follows:
The following figure shows the result of a tree query (including the fields root, level, is_leaf, and Path ):
Execute the following SQL statement:
select connect_by_root(child_col) root, level , decode(connect_by_isleaf,0,'No',1,'Yes') is_leaf, sys_connect_by_path(child_col,'/') pathfrom treestart with parent_col is null connect by
intoTValues(i);8 Commit;9 EndLoop;Ten End; One /4. Batch commit.1 Create or Replace procedureproc_test2 as3 begin4 forIinch 1..1000005 Loop6 Insert intoTValues(i);7 EndLoop;8 Commit;--Batch Submission9 End;Ten /5. Write a SQL, which is inserted into a set concept by the original procedure, and a whole batch is written to the data buffer area.1 Insert into Select from by Level 1000000 ; 2 commit;6. Insert data in dir
=spno;End-----3. How to call in Java---1. Create CallableStatement CS =ct.preparecall ([Call Sp_pro9 (?,?)]);----Cs.setint (1,10);----Cs.registeroutparameter (2,oracle.jdbc.oracletypes.cursor);--run--cs.execute ();--Get the result set/*resultset rs= (ResultSet) Cs.getobject (2);while (Rs.next ()) {....}*/---------------------Exception Handling---------Case_not_foundData_not_foundCursor_already_openDup_val_on_index Unique index repeatedInvaild_cursor run operation on an illegal cursor for
In the AWR report, it was found that a SQL is inefficient:Select Batch_status from T_batch_infowhere batch_status= ' 0 'and sys_id= ' STM06 ';View execution Plan Discovery the query takes advantage of the index, which contains the Batch_status field, but with the following SQL query:Select Batch_status,count (*) from T_batch_infoGROUP BY Batch_statusThere are few values found for the Batch_status field:Batc
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.